# 掌控板3.0 ```{admonition} 本文引用的文件 :class: note - [esp32s3/docs/1_hardware/1_1_introduce.rst](../../../products/mpython-s3/1_hardware/1_1_introduce.rst) - [esp32s3/docs/1_hardware/1_2_Technical_parameters.rst](../../../products/mpython-s3/1_hardware/1_2_Technical_parameters.rst) - [esp32s3/docs/1_hardware/1_3_IO.rst](../../../products/mpython-s3/1_hardware/1_3_IO.rst) - [esp32s3/docs/1_hardware/1_4_Structural_dimensions.rst](../../../products/mpython-s3/1_hardware/1_4_Structural_dimensions.rst) - `esp32s3/firmware/boards/mpython_v3/board.json` - `esp32s3/firmware/boards/mpython_v3/mpconfigboard.h` - `esp32s3/firmware/boards/mpython_v3/modules/mpython.py` ``` ## 产品概述 掌控板3.0(mpython_v3)是一款面向K12创客与AIoT教学的开源硬件,基于ESP32-S3双核处理器,集成1.47寸LCD彩屏、音频编解码与喇叭、六轴传感器、磁传感器、光线传感器、麦克风、RGB灯、实体按键与触摸按键等丰富外设,支持WiFi与蓝牙5双模通信。其固件基于MicroPython与ESP-IDF二次开发,提供板载驱动与常用模块接口,配合图形化或Python编程环境,可快速实现环境监测、创意造物、物联网控制与基础AI应用等教学场景。 - 目标用户:中小学信息技术教师与学生、创客爱好者、IoT/AI入门开发者 - 核心价值:低门槛上手、丰富板载资源、跨平台生态、可扩展的IO能力 - 适用场景:编程教育、传感器实验、小游戏与电子宠物、智能家居节点、简易AI语音/视觉项目 **章节来源** - [esp32s3/docs/1_hardware/1_1_introduce.rst:1-47](../../../products/mpython-s3/1_hardware/1_1_introduce.rst) ## 核心业务流程 本小节从“硬件—固件—应用”的角度梳理典型使用流程,便于理解各层职责与数据流向。 ```text sequenceDiagram participant User as "用户" participant App as "应用代码
examples/mpython_v3/main.py" participant Lib as "板级库
mpython.py" participant HW as "板载硬件
LCD/传感器/音频/IO" participant Net as "网络栈
WiFi/BLE" User->>App : 编写并运行程序 App->>Lib : 调用显示/传感器/音频/IO API Lib->>HW : 通过I2C/SPI/ADC/PWM等总线访问外设 Lib->>Net : 连接WiFi/开启热点可选 HW-->>Lib : 返回传感器数据/状态 Lib-->>App : 封装后的数据对象 App-->>User : 屏幕显示/声音反馈/联网结果 ``` - 显示流程:应用通过TFT_displayer类写入帧缓冲,最终由底层LCD驱动刷新到1.47寸屏幕 - 传感器流程:I2C读取QMI8658C/MMC5603/LTR-308等数据,经库函数转换为物理量 - 音频流程:通过ES8388进行录音/播放,结合内置喇叭输出 - 网络流程:STA模式连接路由器或AP模式创建热点,供上层应用使用 **章节来源** - `esp32s3/firmware/examples/mpython_v3/main.py:1-145` - `esp32s3/firmware/boards/mpython_v3/modules/mpython.py:41-130` - `esp32s3/firmware/boards/mpython_v3/modules/mpython.py:147-196` ## 功能模块清单 以下按硬件与软件分层列出主要模块及其职责、用户价值与验收要点。 - 计算与通信 - ESP32-S3双核处理器、512K SRAM、8MB PSRAM、16MB Flash;支持IEEE 802.11 b/g/n Wi-Fi与Bluetooth 5 - 价值:高性能算力与大容量存储,满足多媒体与AIoT需求 - 验收:能正常编译烧录、Wi-Fi/BLE可用、内存充足 - 显示模块 - 1.47寸LCD彩屏(ST7789),分辨率320x172,RGB565 - 价值:直观交互界面,适合信息展示与游戏 - 验收:屏幕点亮、字符/图像显示正常、刷新无闪烁 - 输入模块 - 实体按键A/B/Reset;触摸按键P/Y/T/H/O/N - 价值:便捷人机交互,支持事件回调 - 验收:按键按下/释放检测准确,触摸阈值可调 - 传感器模块 - 六轴传感器QMI8658C(加速度计+陀螺仪)、磁传感器MMC5603、数字光线传感器LTR-308 - 价值:运动检测、方向感知、光照测量,支撑多种项目 - 验收:数据可读、量程/分辨率可配置、磁力校准可用 - 音频模块 - ES8388音频解码芯片、NS4150功放、双麦克风CDX4013、1W贴片喇叭 - 价值:录音、播放、TTS/语音识别扩展,丰富交互体验 - 验收:录音/播放正常、音量可调、噪声测量合理 - IO扩展 - 20通道数字I/O(含PWM/TouchPad)、6路12bit ADC(P0~P4,P6)、I2C、UART、SPI - 价值:灵活接入外部模块与传感器 - 验收:GPIO读写、ADC采样、I2C扫描、串口通信正常 - 供电与电源管理 - USB 5V或金手指3.3V供电,工作电压3.3V,最大工作电流700mA,最大负载电流1000mA - 价值:多供电方式,适配不同场景 - 验收:USB供电稳定、3.3V引脚输出正常、带载不重启 - 固件与API - MicroPython + ESP-IDF,板级库封装TFT显示、WiFi、MOTION、Pin、Button/Touch等 - 价值:降低开发门槛,统一API风格 - 验收:示例程序可运行、API行为符合文档 **章节来源** - [esp32s3/docs/1_hardware/1_2_Technical_parameters.rst:11-84](../../../products/mpython-s3/1_hardware/1_2_Technical_parameters.rst) - [esp32s3/docs/1_hardware/1_3_IO.rst:1-55](../../../products/mpython-s3/1_hardware/1_3_IO.rst) - `esp32s3/firmware/boards/mpython_v3/modules/mpython.py:41-130` - `esp32s3/firmware/boards/mpython_v3/modules/mpython.py:147-196` ## 数据与状态 - 核心数据模型 - TFT显示:FrameBuffer(320x172 RGB565),通过TFT_displayer类进行字符绘制与刷新 - 传感器数据:加速度/角速度/磁场强度/航向角/光照值等,经I2C读取后转换 - 音频数据:录音PCM/WAV、播放音频流,音量与状态管理 - 网络状态:STA/AP模式切换、连接成功/失败、IP分配 - 关键状态流转 - 显示:clear→fill/pixel/text→show刷新 - 传感器:初始化→配置量程/分辨率→读取→校准(磁力) - 音频:初始化→录音/播放→暂停/停止→释放 - 网络:扫描→连接→获取IP→断开/关闭 - 数据所有权边界 - 板级库负责底层驱动与数据封装,应用层仅调用高层API - I2C总线共享,需避免冲突(如内部传感器与外部设备共用) **章节来源** - `esp32s3/firmware/boards/mpython_v3/modules/mpython.py:41-130` - [esp32s3/docs/1_hardware/1_3_IO.rst:1-55](../../../products/mpython-s3/1_hardware/1_3_IO.rst) ## 关键约束与边界 - 非功能性需求 - 功耗与散热:最大工作电流700mA,持续高负载需注意散热 - 实时性:音频与显示刷新对时序敏感,应避免阻塞操作 - 可靠性:I2C总线共享,外部设备需正确上拉与地址分配 - 依赖与集成边界 - 固件依赖MicroPython与ESP-IDF,构建系统为CMake - 板载I2C引脚固定(SCL=43, SDA=44),与内部传感器共享 - LCD使用SPI(CS/RS/SCK/SDA/BL),音频使用I2S(DOUT/MCLK/DIN/BCK/LRCK) - 业务约束 - P4用于光线传感器、P10用于声音传感器,不可作为通用IO使用 - WiFi与BLE同时使用时需注意信道与资源占用 - 录音与噪声测量不宜同时运行,避免数据异常 **章节来源** - [esp32s3/docs/1_hardware/1_2_Technical_parameters.rst:40-61](../../../products/mpython-s3/1_hardware/1_2_Technical_parameters.rst) - `esp32s3/firmware/boards/mpython_v3/mpconfigboard.h:13-28` - [esp32s3/docs/1_hardware/1_3_IO.rst:1-55](../../../products/mpython-s3/1_hardware/1_3_IO.rst) ## 附录:技术参数、IO接口、结构尺寸与原理图 - 技术参数 - CPU:ESP32-S3双核,主频240MHz,512K SRAM,支持Wi-Fi与蓝牙5 - 存储:8MB PSRAM,16MB Flash - 屏幕:1.47寸LCD彩屏,分辨率320x172,型号ST7789 - 传感器:QMI8658C六轴、MMC5603磁传感器、LTR-308光线传感器 - 音频:ES8388解码芯片、NS4150功放、双麦克风、1W喇叭 - 按键:实体按键A/B/Reset,触摸按键P/Y/T/H/O/N - 供电:USB 5V或金手指3.3V,工作电压3.3V,最大工作电流700mA,最大负载电流1000mA - IO接口 - 20通道数字I/O(含PWM/TouchPad),6路12bit ADC(P0~P4,P6) - I2C、UART(1路,115200bps)、SPI支持 - LCD屏引脚:GPIO33(BL)、GPIO34(CS)、GPIO35(RS)、GPIO36(SCK)、GPIO37(SDA) - 音频解码芯片引脚:GPIO38(DOUT)、GPIO39(MCLK)、GPIO40(DIN)、GPIO41(BCK)、GPIO42(LRCK) - 结构尺寸 - 参考官方结构尺寸图,便于外壳设计与安装定位 - 原理图 - 参考官方原理图PDF,了解完整电路连接与器件布局 **章节来源** - [esp32s3/docs/1_hardware/1_2_Technical_parameters.rst:11-84](../../../products/mpython-s3/1_hardware/1_2_Technical_parameters.rst) - [esp32s3/docs/1_hardware/1_3_IO.rst:1-55](../../../products/mpython-s3/1_hardware/1_3_IO.rst) - [esp32s3/docs/1_hardware/1_4_Structural_dimensions.rst:1-8](../../../products/mpython-s3/1_hardware/1_4_Structural_dimensions.rst)